import {
	ListExpViewActionType,
	IListExpViewAbility,
	IListExpBarAbility,
	IListExpViewControllerParams,
	IListExpViewStore,
	IListExpViewController,
} from '@/core/interface';
import { ExpViewController } from './exp-view-controller';

/**
 * 列表导航视图控制器
 *
 * @export
 * @class ListExpViewController
 * @extends {ExpViewController<ListExpViewActionType, IListExpViewStore, IListExpViewAbility>}
 * @implements {IListExpViewController<IListExpViewStore, IListExpViewAbility>}
 */
export class ListExpViewController
	extends ExpViewController<
		ListExpViewActionType,
		IListExpViewStore,
		IListExpViewAbility
	>
	implements IListExpViewController<IListExpViewStore, IListExpViewAbility>
{
	/**
	 * 获取树部件能力
	 *
	 * @protected
	 * @return {*}  {(IListAbility | undefined)}
	 * @memberof ListViewController
	 */
	protected getExpCtrlAbility(): IListExpBarAbility | undefined {
		return this.getSubAbility<IListExpBarAbility>('listExpBar');
	}
}
